トランザクションは、ログ・レコードの形式でログに保存されます。ブックマークを使用して、マスター・データ・ストアがレプリケートしたログ・レコードまたはレプリケートしていないログ・レコードを検出できます。
ブックマークは、ログ順序番号(LSN)で構成されています。この番号は、レプリケーションのパフォーマンスを測定するために使用可能なトランザクション・ログ内の特定のレコードの位置を識別できます。ブックマークに関連付けられているLSNは、hold LSN、last written LSN およびlast LSN forced to disk です。hold LSN は、サブスクライバに送信できるようにログ内に保持されている最下位(最も古い)レコードを示します。hold LSN とlast written LSN を比較することによって、サブスクライバに送信されていないトランザクション・ログ内のレコードの数を確認できます。last LSN forced to disk は、ディスク上のログ・ファイルに書き込まれた最後のレコードを示します。
特定のサブスクライバへのレプリケーションをより正確に監視する方法として、サブスクライバのsend LSN を監視するという方法があります。send LSN は、TTREP.REPPEERS表のSENDLSNHIGHおよびSENDLSNLOWフィールドで構成されています。send LSN 値とは対照的に、ブックマーク内に返されるhold LSN は、すべてのサブスクライバの最小のsend LSN を示すために10秒ごとに計算されます。このため、hold LSN は、レプリケーションの進行状況の概要を示します。個々のサブスクライバへのレプリケーションの進行状況は明示されません。send LSN は、レプリケーションの確認応答の非同期特性(主にパフォーマンスの向上を目的とする)のため、少し遅れる可能性もあります。ただし、サブスクライバのsend LSN は、使用できる最も正確な値であり、常にhold LSN に先行しています。
レプリケーション・ログ・レコードは、次の方法で表示できます。
ブックマークの位置をコマンドラインから表示するには、-bookmarkオプションを指定してttRepAdminユーティリティを使用します。
> ttRepAdmin -dsn masterds -bookmark Replication hold LSN ...... 10/927692 Last written LSN .......... 10/928908 Last LSN forced to disk ... 10/280540各LSNは、次の2つの値で定義されています。
Log file number / Offset in log file
ttRepAdmin -bookmarkのLSN出力は次のようになります。
行
|
説明
|
---|---|
Replication hold LSN
|
サブスクライバに送信するためにログ内に保持されている最下位(最も古い)レコードの場所。値が-1/-1の場合は、レプリケーションがすべてのサブスクライバに対してStop状態であることを示します。
|
Last written LSN
|
データ・ストアに対して最後に生成されたトランザクション・ログ・レコードの場所。
|
Last LSN forced to disk
|
ディスクに最後に書き込まれたトランザクション・ログ・レコードの場所。ディスクレス・ロギングが有効になっている場合、この値は-1/-1になります。
|
ブックマークの位置をプログラムから表示するには、ttBookmarkプロシージャを使用します。